--- old/qtbase/src/plugins/platforms/windows/qwindowscontext.cpp	2015-06-20 17:40:20.956781548 -0400
+++ new/qtbase/src/plugins/platforms/windows/qwindowscontext.cpp	2015-06-20 17:29:32.052772416 -0400
@@ -69,7 +69,7 @@
 #include <stdlib.h>
 #include <stdio.h>
 #include <windowsx.h>
-#ifndef Q_OS_WINCE
+#if !defined(Q_OS_WINCE) && (!defined(USE___UUIDOF) || (defined(USE___UUIDOF) && USE___UUIDOF == 1))
 #  include <comdef.h>
 #endif
 
@@ -762,7 +762,7 @@
                           HWND_MESSAGE, NULL, (HINSTANCE)GetModuleHandle(0), NULL);
 }
 
-#ifndef Q_OS_WINCE
+#if !defined(Q_OS_WINCE) && (!defined(USE___UUIDOF) || (defined(USE___UUIDOF) && USE___UUIDOF == 1))
 // Re-engineered from the inline function _com_error::ErrorMessage().
 // We cannot use it directly since it uses swprintf_s(), which is not
 // present in the MSVCRT.DLL found on Windows XP (QTBUG-35617).
@@ -781,7 +781,7 @@
          return QStringLiteral("IDispatch error #") + QString::number(wCode);
      return QStringLiteral("Unknown error 0x0") + QString::number(comError.Error(), 16);
 }
-#endif // !Q_OS_WINCE
+#endif // !defined(Q_OS_WINCE) && (!defined(USE___UUIDOF) || (defined(USE___UUIDOF) && USE___UUIDOF == 1))
 
 /*!
     \brief Common COM error strings.
@@ -846,12 +846,12 @@
     default:
         break;
     }
-#ifndef Q_OS_WINCE
+#if !defined(Q_OS_WINCE) && (!defined(USE___UUIDOF) || (defined(USE___UUIDOF) && USE___UUIDOF == 1))
     _com_error error(hr);
     result += QByteArrayLiteral(" (");
     result += errorMessageFromComError(error);
     result += ')';
-#endif // !Q_OS_WINCE
+#endif // !defined(Q_OS_WINCE) && (!defined(USE___UUIDOF) || (defined(USE___UUIDOF) && USE___UUIDOF == 1))
     return result;
 }
 
